package com.kjs.execptionless;

import com.kjs.common.resultModel.JsonResult;


/**
 * Created by zmk523@163.com on 2019/6/21 14:17
 */

public enum ExceptionCode {
    //正常
    Normal(0),

    //未授权
    Unauthorized(401),

    //无权限
    NoAccess(1000),

    //业务数据错误
    DataError(2000),

    //业务数据错误
    UnknownError(-1),

    //业务数据不存在
    DataNotFound(2002),

    //数据格式错误
    DataFormatError(2003),

    //数据类型错误
    DataTypeError(2004),

    //数据重复
    DataRepeat(2005),

    //数据没有授权
    DataUnsupported(2006),

    //数据无效
    DataInvalid(2007),

    //参数错误
    ParameterError(3000),

    //业务返回错误
    ResultError(3006),

    //访问过于频繁，请稍后重试
    RepeatedRequests(6009);

    private int value = 0;

    private ExceptionCode(int value) {     //必须是private的，否则编译错误
        this.value = value;
    }

    public int value() {
        return this.value;
    }

    public static ExceptionCode get(String str) {
        for (ExceptionCode exceptionCode : values()) {
            if (exceptionCode.toString().equals(str)) {
                return exceptionCode;
            }
        }
        return null;
    }

    public static ExceptionCode get(int code) {
        return values()[code];
    }

}
